//---------------------------------------------------------------------------
//	Greenplum Database
//	Copyright (C) 2009 Greenplum, Inc.
//
//	@filename:
//		xforms.h
//
//	@doc:
//		Collective include for all xform related headers
//---------------------------------------------------------------------------
#ifndef SPQOPT_xforms_H
#define SPQOPT_xforms_H

#include "spqopt/xforms/CXform.h"
#include "spqopt/xforms/CXformAntiSemiJoinAntiSemiJoinNotInSwap.h"
#include "spqopt/xforms/CXformAntiSemiJoinAntiSemiJoinSwap.h"
#include "spqopt/xforms/CXformAntiSemiJoinInnerJoinSwap.h"
#include "spqopt/xforms/CXformAntiSemiJoinNotInAntiSemiJoinNotInSwap.h"
#include "spqopt/xforms/CXformAntiSemiJoinNotInAntiSemiJoinSwap.h"
#include "spqopt/xforms/CXformAntiSemiJoinNotInInnerJoinSwap.h"
#include "spqopt/xforms/CXformAntiSemiJoinNotInSemiJoinSwap.h"
#include "spqopt/xforms/CXformAntiSemiJoinSemiJoinSwap.h"
#include "spqopt/xforms/CXformCTEAnchor2Sequence.h"
#include "spqopt/xforms/CXformCTEAnchor2TrivialSelect.h"
#include "spqopt/xforms/CXformCollapseGbAgg.h"
#include "spqopt/xforms/CXformCollapseProject.h"
#include "spqopt/xforms/CXformContext.h"
#include "spqopt/xforms/CXformDelete2DML.h"
#include "spqopt/xforms/CXformDifference2LeftAntiSemiJoin.h"
#include "spqopt/xforms/CXformDifferenceAll2LeftAntiSemiJoin.h"
#include "spqopt/xforms/CXformDynamicGet2DynamicTableScan.h"
#include "spqopt/xforms/CXformDynamicIndexGet2DynamicIndexScan.h"
#include "spqopt/xforms/CXformEagerAgg.h"
#include "spqopt/xforms/CXformExpandDynamicGetWithExternalPartitions.h"
#include "spqopt/xforms/CXformExpandFullOuterJoin.h"
#include "spqopt/xforms/CXformExpandNAryJoin.h"
#include "spqopt/xforms/CXformExpandNAryJoinDP.h"
#include "spqopt/xforms/CXformExpandNAryJoinDPv2.h"
#include "spqopt/xforms/CXformExpandNAryJoinGreedy.h"
#include "spqopt/xforms/CXformExpandNAryJoinMinCard.h"
#include "spqopt/xforms/CXformExternalGet2ExternalScan.h"
#include "spqopt/xforms/CXformFactory.h"
#include "spqopt/xforms/CXformGbAgg2Apply.h"
#include "spqopt/xforms/CXformGbAgg2HashAgg.h"
#include "spqopt/xforms/CXformGbAgg2ScalarAgg.h"
#include "spqopt/xforms/CXformGbAgg2StreamAgg.h"
#include "spqopt/xforms/CXformGbAggDedup2HashAggDedup.h"
#include "spqopt/xforms/CXformGbAggDedup2StreamAggDedup.h"
#include "spqopt/xforms/CXformGbAggWithMDQA2Join.h"
#include "spqopt/xforms/CXformGet2TableScan.h"
#include "spqopt/xforms/CXformImplementAssert.h"
#include "spqopt/xforms/CXformImplementBitmapTableGet.h"
#include "spqopt/xforms/CXformImplementCTEConsumer.h"
#include "spqopt/xforms/CXformImplementCTEProducer.h"
#include "spqopt/xforms/CXformImplementConstTableGet.h"
#include "spqopt/xforms/CXformImplementDML.h"
#include "spqopt/xforms/CXformImplementDynamicBitmapTableGet.h"
#include "spqopt/xforms/CXformImplementFullOuterMergeJoin.h"
#include "spqopt/xforms/CXformImplementIndexApply.h"
#include "spqopt/xforms/CXformImplementInnerCorrelatedApply.h"
#include "spqopt/xforms/CXformImplementInnerJoin.h"
#include "spqopt/xforms/CXformImplementLeftAntiSemiCorrelatedApply.h"
#include "spqopt/xforms/CXformImplementLeftAntiSemiCorrelatedApplyNotIn.h"
#include "spqopt/xforms/CXformImplementLeftOuterCorrelatedApply.h"
#include "spqopt/xforms/CXformImplementLeftSemiCorrelatedApply.h"
#include "spqopt/xforms/CXformImplementLeftSemiCorrelatedApplyIn.h"
#include "spqopt/xforms/CXformImplementLimit.h"
#include "spqopt/xforms/CXformImplementPartitionSelector.h"
#include "spqopt/xforms/CXformImplementRowTrigger.h"
#include "spqopt/xforms/CXformImplementSequence.h"
#include "spqopt/xforms/CXformImplementSequenceProject.h"
#include "spqopt/xforms/CXformImplementSplit.h"
#include "spqopt/xforms/CXformImplementTVF.h"
#include "spqopt/xforms/CXformImplementTVFNoArgs.h"
#include "spqopt/xforms/CXformImplementUnionAll.h"
#include "spqopt/xforms/CXformIndexGet2IndexOnlyScan.h"
#include "spqopt/xforms/CXformIndexGet2IndexScan.h"
#include "spqopt/xforms/CXformInlineCTEConsumer.h"
#include "spqopt/xforms/CXformInlineCTEConsumerUnderSelect.h"
#include "spqopt/xforms/CXformInnerApply2InnerJoin.h"
#include "spqopt/xforms/CXformInnerApply2InnerJoinNoCorrelations.h"
#include "spqopt/xforms/CXformInnerApplyWithOuterKey2InnerJoin.h"
#include "spqopt/xforms/CXformInnerJoin2HashJoin.h"
#include "spqopt/xforms/CXformInnerJoin2NLJoin.h"
#include "spqopt/xforms/CXformInnerJoin2PartialDynamicIndexGetApply.h"
#include "spqopt/xforms/CXformInnerJoinAntiSemiJoinNotInSwap.h"
#include "spqopt/xforms/CXformInnerJoinAntiSemiJoinSwap.h"
#include "spqopt/xforms/CXformInnerJoinSemiJoinSwap.h"
#include "spqopt/xforms/CXformInnerJoinWithInnerSelect2PartialDynamicIndexGetApply.h"
#include "spqopt/xforms/CXformInsert2DML.h"
#include "spqopt/xforms/CXformIntersect2Join.h"
#include "spqopt/xforms/CXformIntersectAll2LeftSemiJoin.h"
#include "spqopt/xforms/CXformJoin2BitmapIndexGetApply.h"
#include "spqopt/xforms/CXformJoin2IndexGetApply.h"
#include "spqopt/xforms/CXformJoinAssociativity.h"
#include "spqopt/xforms/CXformJoinCommutativity.h"
#include "spqopt/xforms/CXformJoinSwap.h"
#include "spqopt/xforms/CXformLeftAntiSemiApply2LeftAntiSemiJoin.h"
#include "spqopt/xforms/CXformLeftAntiSemiApply2LeftAntiSemiJoinNoCorrelations.h"
#include "spqopt/xforms/CXformLeftAntiSemiApplyNotIn2LeftAntiSemiJoinNotIn.h"
#include "spqopt/xforms/CXformLeftAntiSemiApplyNotIn2LeftAntiSemiJoinNotInNoCorrelations.h"
#include "spqopt/xforms/CXformLeftAntiSemiJoin2CrossProduct.h"
#include "spqopt/xforms/CXformLeftAntiSemiJoin2HashJoin.h"
#include "spqopt/xforms/CXformLeftAntiSemiJoin2NLJoin.h"
#include "spqopt/xforms/CXformLeftAntiSemiJoinNotIn2CrossProduct.h"
#include "spqopt/xforms/CXformLeftAntiSemiJoinNotIn2HashJoinNotIn.h"
#include "spqopt/xforms/CXformLeftAntiSemiJoinNotIn2NLJoinNotIn.h"
#include "spqopt/xforms/CXformLeftJoin2RightJoin.h"
#include "spqopt/xforms/CXformLeftOuter2InnerUnionAllLeftAntiSemiJoin.h"
#include "spqopt/xforms/CXformLeftOuterApply2LeftOuterJoin.h"
#include "spqopt/xforms/CXformLeftOuterApply2LeftOuterJoinNoCorrelations.h"
#include "spqopt/xforms/CXformLeftOuterJoin2HashJoin.h"
#include "spqopt/xforms/CXformLeftOuterJoin2NLJoin.h"
#include "spqopt/xforms/CXformLeftSemiApply2LeftSemiJoin.h"
#include "spqopt/xforms/CXformLeftSemiApply2LeftSemiJoinNoCorrelations.h"
#include "spqopt/xforms/CXformLeftSemiApplyIn2LeftSemiJoin.h"
#include "spqopt/xforms/CXformLeftSemiApplyIn2LeftSemiJoinNoCorrelations.h"
#include "spqopt/xforms/CXformLeftSemiApplyInWithExternalCorrs2InnerJoin.h"
#include "spqopt/xforms/CXformLeftSemiApplyWithExternalCorrs2InnerJoin.h"
#include "spqopt/xforms/CXformLeftSemiJoin2CrossProduct.h"
#include "spqopt/xforms/CXformLeftSemiJoin2HashJoin.h"
#include "spqopt/xforms/CXformLeftSemiJoin2InnerJoin.h"
#include "spqopt/xforms/CXformLeftSemiJoin2InnerJoinUnderGb.h"
#include "spqopt/xforms/CXformLeftSemiJoin2NLJoin.h"
#include "spqopt/xforms/CXformMaxOneRow2Assert.h"
#include "spqopt/xforms/CXformMultiExternalGet2MultiExternalScan.h"
#include "spqopt/xforms/CXformProject2Apply.h"
#include "spqopt/xforms/CXformProject2ComputeScalar.h"
#include "spqopt/xforms/CXformPushDownLeftOuterJoin.h"
#include "spqopt/xforms/CXformPushGbBelowJoin.h"
#include "spqopt/xforms/CXformPushGbBelowUnion.h"
#include "spqopt/xforms/CXformPushGbBelowUnionAll.h"
#include "spqopt/xforms/CXformPushGbDedupBelowJoin.h"
#include "spqopt/xforms/CXformPushGbWithHavingBelowJoin.h"
#include "spqopt/xforms/CXformRemoveSubqDistinct.h"
#include "spqopt/xforms/CXformResult.h"
#include "spqopt/xforms/CXformRightOuterJoin2HashJoin.h"
#include "spqopt/xforms/CXformSelect2Apply.h"
#include "spqopt/xforms/CXformSelect2BitmapBoolOp.h"
#include "spqopt/xforms/CXformSelect2DynamicBitmapBoolOp.h"
#include "spqopt/xforms/CXformSelect2DynamicIndexGet.h"
#include "spqopt/xforms/CXformSelect2Filter.h"
#include "spqopt/xforms/CXformSelect2IndexGet.h"
#include "spqopt/xforms/CXformSelect2PartialDynamicIndexGet.h"
#include "spqopt/xforms/CXformSemiJoinAntiSemiJoinNotInSwap.h"
#include "spqopt/xforms/CXformSemiJoinAntiSemiJoinSwap.h"
#include "spqopt/xforms/CXformSemiJoinInnerJoinSwap.h"
#include "spqopt/xforms/CXformSemiJoinSemiJoinSwap.h"
#include "spqopt/xforms/CXformSequenceProject2Apply.h"
#include "spqopt/xforms/CXformSimplifyGbAgg.h"
#include "spqopt/xforms/CXformSimplifyLeftOuterJoin.h"
#include "spqopt/xforms/CXformSimplifyProjectWithSubquery.h"
#include "spqopt/xforms/CXformSimplifySelectWithSubquery.h"
#include "spqopt/xforms/CXformSplitDQA.h"
#include "spqopt/xforms/CXformSplitGbAgg.h"
#include "spqopt/xforms/CXformSplitGbAggDedup.h"
#include "spqopt/xforms/CXformSplitLimit.h"
#include "spqopt/xforms/CXformSubqJoin2Apply.h"
#include "spqopt/xforms/CXformSubqNAryJoin2Apply.h"
#include "spqopt/xforms/CXformUnion2UnionAll.h"
#include "spqopt/xforms/CXformUnnestTVF.h"
#include "spqopt/xforms/CXformUpdate2DML.h"
#include "spqopt/xforms/CXformUtils.h"

/* SPQ: for ShareScan */
#include "spqopt/xforms/CXformGet2TableShareScan.h"
/* SPQ: for shareindexscan */
#include "spqopt/xforms/CXformIndexGet2ShareIndexScan.h"

#endif	// !SPQOPT_xforms_H

// EOF
